package com.iqiyi.pps.epg.core.model.statistic;


import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

import javax.persistence.*;
import java.sql.Timestamp;


@Entity
@Table(name = "st_produce_data")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class StatisticProduceData {

    private Long id;
    private Long programId;
    private Long qipuId;
    private String programName;
    private Float programMinutes;
    private String channelName;
    private String user;
    private String cooperativePartiner;
    private String produceDate;
    private Timestamp dotSubTime;
    private Timestamp enterLegoTime;
    private Integer legoProduceFinishedTime;
    private Timestamp publishTime;
    private Timestamp liveBeginTime;
    private Timestamp liveEndTime;
    private Integer isCallLego = 0;
    private Integer isCallLive = 0;
    private Timestamp addTime = new Timestamp(System.currentTimeMillis());
    private Timestamp updateTime;

    private String albumName;
    private Long startAutoDot;
    private Long startManualDot;
    private Long endAutoDot;
    private Long endManualDot;
    private String adInfo;

    private int ocrFlag;
    private Timestamp intelligentInsertTime;
    private int ocrTitleFlag;
    private int dataMode;


    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    @Column(name = "program_id")
    public Long getProgramId() {
        return programId;
    }

    public void setProgramId(Long programId) {
        this.programId = programId;
    }

    @Column(name = "qipu_id")
    public Long getQipuId() {
        return qipuId;
    }

    public void setQipuId(Long qipuId) {
        this.qipuId = qipuId;
    }

    @Column(name = "program_name")
    public String getProgramName() {
        return programName;
    }

    public void setProgramName(String programName) {
        this.programName = programName;
    }

    @Column(name = "program_minutes")
    public Float getProgramMinutes() {
        return programMinutes;
    }

    public void setProgramMinutes(Float programMinutes) {
        this.programMinutes = programMinutes;
    }


    @Column(name = "channel_name")
    public String getChannelName() {
        return channelName;
    }

    public void setChannelName(String channelName) {
        this.channelName = channelName;
    }

    @Column(name = "user")
    public String getUser() {
        return user;
    }

    public void setUser(String user) {
        this.user = user;
    }

    @Column(name = "cooperative_partiner")
    public String getCooperativePartiner() {
        return cooperativePartiner;
    }

    public void setCooperativePartiner(String cooperativePartiner) {
        this.cooperativePartiner = cooperativePartiner;
    }


    @Column(name = "produce_date")
    public String getProduceDate() {
        return produceDate;
    }

    public void setProduceDate(String produceDate) {
        this.produceDate = produceDate;
    }


    @Column(name = "dot_sub_time")
    public Timestamp getDotSubTime() {
        return dotSubTime;
    }

    public void setDotSubTime(Timestamp dotSubTime) {
        this.dotSubTime = dotSubTime;
    }

    @Column(name = "enter_lego_time")
    public Timestamp getEnterLegoTime() {
        return enterLegoTime;
    }

    public void setEnterLegoTime(Timestamp enterLegoTime) {
        this.enterLegoTime = enterLegoTime;
    }

    @Column(name = "lego_produce_finished_time")
    public Integer getLegoProduceFinishedTime() {
        return legoProduceFinishedTime;
    }

    public void setLegoProduceFinishedTime(Integer legoProduceFinishedTime) {
        this.legoProduceFinishedTime = legoProduceFinishedTime;
    }

    @Column(name = "publish_time")
    public Timestamp getPublishTime() {
        return publishTime;
    }

    public void setPublishTime(Timestamp publishTime) {
        this.publishTime = publishTime;
    }

    @Column(name = "live_begin_time")
    public Timestamp getLiveBeginTime() {
        return liveBeginTime;
    }

    public void setLiveBeginTime(Timestamp liveBeginTime) {
        this.liveBeginTime = liveBeginTime;
    }

    @Column(name = "live_end_time")
    public Timestamp getLiveEndTime() {
        return liveEndTime;
    }

    public void setLiveEndTime(Timestamp liveEndTime) {
        this.liveEndTime = liveEndTime;
    }

    @Column(name = "is_call_lego")
    public Integer getIsCallLego() {
        return isCallLego;
    }

    public void setIsCallLego(Integer isCallLego) {
        this.isCallLego = isCallLego;
    }

    @Column(name = "is_call_live")
    public Integer getIsCallLive() {
        return isCallLive;
    }

    public void setIsCallLive(Integer isCallLive) {
        this.isCallLive = isCallLive;
    }


    @Column(name = "add_time")
    public Timestamp getAddTime() {
        return addTime;
    }

    public void setAddTime(Timestamp addTime) {
        this.addTime = addTime;
    }

    @Column(name = "update_time")
    public Timestamp getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Timestamp updateTime) {
        this.updateTime = updateTime;
    }

    @Column(name = "album_name")
    public String getAlbumName() {
        return albumName;
    }

    public void setAlbumName(String albumName) {
        this.albumName = albumName;
    }

    @Column(name = "start_auto_dot")
    public Long getStartAutoDot() {
        return startAutoDot;
    }

    public void setStartAutoDot(Long startAutoDot) {
        this.startAutoDot = startAutoDot;
    }

    @Column(name = "start_manual_dot")
    public Long getStartManualDot() {
        return startManualDot;
    }

    public void setStartManualDot(Long startManualDot) {
        this.startManualDot = startManualDot;
    }

    @Column(name = "end_auto_dot")
    public Long getEndAutoDot() {
        return endAutoDot;
    }

    public void setEndAutoDot(Long endAutoDot) {
        this.endAutoDot = endAutoDot;
    }

    @Column(name = "end_manual_dot")
    public Long getEndManualDot() {
        return endManualDot;
    }

    public void setEndManualDot(Long endManualDot) {
        this.endManualDot = endManualDot;
    }

    @Column(name = "ad_info")
    public String getAdInfo() {
        return adInfo;
    }

    public void setAdInfo(String adInfo) {
        this.adInfo = adInfo;
    }

    @Column(name = "ocr_flag")
    public int getOcrFlag() {
        return ocrFlag;
    }

    public void setOcrFlag(int ocrFlag) {
        this.ocrFlag = ocrFlag;
    }

    @Column(name = "intelligent_insert_time")
    public Timestamp getIntelligentInsertTime() {
        return intelligentInsertTime;
    }

    public void setIntelligentInsertTime(Timestamp intelligentInsertTime) {
        this.intelligentInsertTime = intelligentInsertTime;
    }

    @Column(name = "ocr_title_flag")
    public int getOcrTitleFlag() {
        return ocrTitleFlag;
    }

    public void setOcrTitleFlag(int ocrTitleFlag) {
        this.ocrTitleFlag = ocrTitleFlag;
    }

    @Column(name = "data_mode")
    public int getDataMode() {
        return dataMode;
    }

    public void setDataMode(int dataMode) {
        this.dataMode = dataMode;
    }
}
